
%%%%%%%%%%%%%%%%%%%%%%% file typeinst.tex %%%%%%%%%%%%%%%%%%%%%%%%%
%
% This is the LaTeX source for the instructions to authors using
% the LaTeX document class 'llncs.cls' for contributions to
% the Lecture Notes in Computer Sciences series.
% http://www.springer.com/lncs       Springer Heidelberg 2006/05/04
%
% It may be used as a template for your own input - copy it
% to a new file with a new name and use it as the basis
% for your article.
%
% NB: the document class 'llncs' has its own and detailed documentation, see
% ftp://ftp.springer.de/data/pubftp/pub/tex/latex/llncs/latex2e/llncsdoc.pdf
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\documentclass[runningheads,a4paper]{llncs}
%\bibliographystyle{abbrv}
\usepackage{amssymb}
\usepackage{amsmath}
\setcounter{tocdepth}{3}
\usepackage{graphicx}
\usepackage{fancyvrb}
\usepackage{subfig}
\usepackage{comment,textcomp}


\usepackage{url}
\newcommand{\keywords}[1]{\par\addvspace\baselineskip
\noindent\keywordname\enspace\ignorespaces#1}

\begin{document}

\mainmatter  % start of an individual contribution

% first the title is needed
\title{Prioritizing Dynamic Program Slices with Probabilistic Inference}

% a short form should be given in case it is too long for the running head
\titlerunning{Prioritizing Dynamic Program Slices with Probabilistic Inference}

% the name(s) of the author(s) follow(s) next
%
% NB: Chinese authors should write their first names(s) in front of
% their surnames. This ensures that the names appear correctly in
% the running heads and the author index.
%
\author{Jiabin Xia\inst{1}%
%\thanks{What thanks?}%
\and Yi Zhang\inst{1} \and Cheng Zhang\inst{1} \and Xiangyu Zhang\inst{2}  \and Jianjun Zhao\inst{1}}
%Anna Kramer\and Leonie Kunz\and Christine Rei\ss\and\\
%Nicole Sator\and Erika Siebert-Cole\and Peter Stra\ss er}
%
\authorrunning{Jiabin Xia}
% (feature abused for this document to repeat the title also on left hand pages)

% the affiliations are given next; don't give your e-mail address
% unless you accept that it will be published
\institute{Shanghai Jiao Tong University, China\\
\email{\{rexpie,zorozy,cheng.zhang.stap,zhao-jj\}@sjtu.edu.cn}
\and Department of Computer Science, Purdue University \\
\email{xyzhang@cs.purdue.edu}
}



\toctitle{Prioritizing Dynamic Program Slices}
\tocauthor{Jiabin Xia}
\maketitle
\setcounter{footnote}{0}

\begin{abstract}
Dynamic program slicing often could capture the faulty codes responsible for the creation and transportation of the incorrect outcome. Its limited code size unburdens engineers while debugging. However, conventional dynamic slices do not present extra metrics for further code condensation or prioritization thus may still require considerable human effort to locate the fault in large slicing results. Automated fault localization techniques could be applied to dynamic slicing for better facilitated debugging information.
We propose a novel strategy for automatically calculating the probability of correctness of each statement based on the dynamic slices. Our approach first extracts a runtime dependence graph of the observed program outcome. The next step is the transformation from the dependence network to a Bayesian network. Finally we run a probabilistic inference for the likelihood of correctness of the execution instances and estimate the corresponding correctness of the static statements. We only use abstract representation for the construction of the dependence graph to achieve language independency and loosely coupled design. Programmers can administer a guided bug locating process using our ranking of correctness belief.

\keywords{dynamic slicing, debugging, probabilistic inference, fault localization}
\end{abstract}

\end{document}
